function myInstanceof(obj, Obj) {
  // 首先检查 obj 是否是对象
  if (obj === null || (typeof obj !== 'object' && typeof obj !== 'function')) {
    return false;
  }

  while (obj !== null) {
    if (obj.__proto__ === Obj.prototype) return true;
    obj = obj.__proto__;
  }
  return false;
}

console.log(myInstanceof(1, Object));
// 因为在myInstanceof函数中需要对1进行方法调用，
// 于是将1临时转换成了包装对象，所以此时在函数中
// 1成了Number(1)，所以最后的返回结果是true
// 所以需要在函数开始对obj进行检测
